Пульт.Онлайн /

Архитектура системы

Web-SCADA Pult.online построена на гибкой и масштабируемой клиент-серверной архитектуре. Основными логическими компонентами системы являются сервер и коммуникационные шлюзы. Шлюзы обеспечивают постоянное соединение с сервером, мониторинг аварий, трендов и выполнение задач по расписанию. Сервер предоставляет пользовательский интерфейс и обеспечивает хранение исторических данных.

Сервер и Шлюз представляют собой программные компоненты и могут быть запущены на широком спектре устройств, работающих под ОС Linux. Сервер системы может быть размещен в интернете или в локальной сети объекта. При необходимости, Сервер и Шлюз могут быть установлены вместе, на одном устройстве. Например, на контроллере, работающем под ОС Linux.

К одному серверу допускается подключение неограниченного* количества узлов и шлюзов. К одному шлюзу допускается подключение неограниченного* количества узлов и каскадных шлюзов.

* - ограничение обусловлено только производительностью устройств и количеством доступных переменных по лицензии.

Функции сервера

  • Предоставление web-интерфейса оператора
  • Предоставление web-интерфейса редактора проектов
  • Коммуникация со шлюзами
  • Опрос полевых устройств (узлов)
  • Выполнение скриптов
  • Выполнение задач по расписанию
  • Хранение исторических данных
  • Обработка аварий
  • Рассылка уведомлений пользователям

Функции шлюза

  • Коммуникация с сервером
  • Опрос полевых устройств (узлов)
  • Выполнение скриптов
  • Выполнение задач по расписанию
  • Буферизация данных при разрыве связи
  • Отправка данных на сервер

Полезная информация

  • Сервер и шлюзы "из коробки" поддерживают SSL
  • При наличии доменного имени доступна автоматическая генерация сертификатов LetsEncrypt
  • Возможен защищенный интернет-доступ к "локальным" серверам (не требуется белый IP)
  • Язык скриптов - ограниченный JS
  • Тренды хранятся в бинарных файлах в виде записей фиксированной длинны (16 байт), старые записи автоматически удаляются для экономии места на диске
  • Журнал событий (аварии, пользовательские действия и тп.) хранится в БД SQLITE
  • Взаимодействие между сервисами выполняется через UNIX-сокеты или TCP-сокеты по JSONRPC2.0/WS
  • Все компоненты системы устанавливаются в одну папку (обычно /pult) - легко организовать полное резервное копирование
  • Работа пользователей с системой осуществляется через веб-интерфейс сервера с помощью компьютеров и мобильных устройств на любой ОС (Windows, MacOS, Android, iOS, Linux и т.д.).
  • Не требуется установки дополнительного ПО и приложений - работа с системой осуществляется через обычный браузер. Все функции системы доступны онлайн, включая редактор проектов с графическим редактором мнемосхем.
  • Дистрибутивы Сервера и Шлюза полностью устанавливаются в одну папку (обычно /pult) и представляют из себя наборы исполняемых файлов, размещенных в папке services, которые взаимодействуют по протоколу JSONRPC2.0 и по сути являются микросервисами.
  • Каждый микросервис выполняет свою задачу (например, отправку уведомлений по SMS или мониторинг MQTT-переменных). Настройки микросервисов определяются конфигурационными файлами config.cfg в папке микросервиса.
  • Запуск и остановка системы осуществляется скриптами start, stop и restart, размещенными в корне папки установки. При перезагрузке устройства ПО Пульт.Онлайн запускается автоматически, веб-интерфейс сразу становится доступен на заданных портах (обычно 80, 443 или 8008).

  Email
  SMS